package cn.tedu.inner;
/**本类用于测试匿名内部类*/
public class TestInner5 {
    public static void main(String[] args) {
        //以前我们先创建接口,在创建接口的实现类,实现类中需要实现接口的抽象方法
        //创建实现类的对象才能调用方法相当于:创建接口实现类+重写接口中抽象方法+调用方法
        /**匿名内部类没有名字,通常与匿名对象结合使用,用于调用一次&一个方法*/
        new Inner1() {
            @Override
            public void save() {
                System.out.println("正在保存");
            }

            @Override
            public void get() {

            }
        }.save();
        new Inner2() {
            @Override
            public void play() {

            }
        }.play();
        //创建普通类的匿名对象并调用它的方法
        new Inner3().get();
    }
}
interface Inner1{
    void save();
    void get();
}
//创建抽象类
abstract class Inner2{
    public void eat(){
        System.out.println("eat...");
    }
    abstract public void play();
}
class Inner3{
    public void get(){
        System.out.println("get");
    }
    public void get2(){
        System.out.println("get");
    }
}